#include <iostream>
#include <algorithm>

using namespace std;

bool arr[256][256] = { false };
int n, m;

bool test(int x, int y)
{       
    if (arr[x - 1][y - 2] && (!arr[x - 1][y - 1] || !arr[x][y - 1]))
        return false;
    if (arr[x - 2][y - 1] && (!arr[x - 1][y - 1] || !arr[x - 1][y]))
        return false;
    if (arr[x - 2][y + 1] && (!arr[x - 1][y + 1] || !arr[x - 1][y]))
        return false;
    if (arr[x - 1][y + 2] && (!arr[x - 1][y + 1] || !arr[x][y + 1]))
        return false;
    if (arr[x + 1][y + 2] && (!arr[x + 1][y + 1] || !arr[x][y + 1]))
        return false;
    if (arr[x + 2][y + 1] && (!arr[x + 1][y + 1] || !arr[x - 1][y]))
        return false;
    if (arr[x + 2][y - 1] && (!arr[x + 1][y - 1] || !arr[x - 1][y]))
        return false;
    if (arr[x + 1][y - 2] && (!arr[x + 1][y - 1] || !arr[x][y - 1]))
        return false;
    return true;
}
int main(int argc, char const *argv[])
{
    int k, x, y;
    int i, j, result = 0;
    cin >> n >> m >> k;
    for (i = 0; i < k; i++)
    {
        cin >> x >> y;
        if (!arr[x + 1][y + 1] && test(x + 1, y + 1))
        {
            result++;
            arr[x + 1][y + 1] = true;
        }
    }
    cout << result;
    // for (i = 2; i <= n + 1; i++)
    // {
    //     for (j = 2; j <= m + 1; j++)
    //     {
    //         cout << arr[i][j] << " ";
    //     }
    //     cout << "\n";
    // }
    
    return 0;
}
